package com.gxa.mapper.employee;

import com.gxa.common.R.ResponseData;
import com.gxa.pojo.Employee;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 全部员工数据层
 */
public interface QuanBuEmployeeListMapper {
    /**
     * 查询全部员工条数
     * @param ename
     * @return
     */
    Integer selectAllCount(@Param("ename") String ename);

    /**
     * 分页+模糊查询全部员工
     * @param ename          姓名模糊查询
     * @param startIndex     查询起始数
     * @param pageSize       当前页数
     * @return               返回一个List<Employee>类型的员工信息
     */
    List<Employee> selectEmployeeForPageAndEname(@Param("ename") String ename,
                                                 @Param("startIndex") int startIndex,
                                                 @Param("pageSize") int pageSize);

    /**
     * 将在职员工设置为离职状态
     * @param employee       员工实体类
     */
    void setDepartEmployee(Employee employee);

    /**
     *（全部、在职、离职、黑名单）员工编辑信息
     * @param employee       员工实体类
     */
    void updateEmployee(Employee employee);

    /**
     * 通过员工编号ID删除员工信息
     * @param idList        需要删除的id
     */
    void delEmployee(@Param("idList") List<Integer> idList);

}
